package com.flyxteam.commons.dao.mybatis.core.sqlbuilder;

import java.util.List;
import java.util.Map;

import com.flyxteam.commons.dao.mybatis.api.condition.Condition;

public abstract class SqlBuilderFactory {

	public static SqlBuilder insertSqlBuilder(String tableName, Map<String, Object> columnMap) {
		return new InsertSqlBuilder(tableName, columnMap);
	}
	
	public static SqlBuilder insertSqlBuilder(String tableName, List<Map<String, Object>> columnList) {
		return new InsertSqlBuilder(tableName, columnList);
	}
	
	public static SqlBuilder updateSqlBuilder(String tableName, Map<String, Object> updateColumns, List<Condition> conditionColumns) {
		return new UpdateSqlBuilder(tableName, updateColumns, conditionColumns);
	}
	
	public static SqlBuilder deleteSqlBuilder(String tableName, List<Condition> conditionColumns) {
		return new DeleteSqlBuilder(tableName, conditionColumns);
	}
	
	public static SqlBuilder selectSqlBuilder(String tableName, List<Condition> conditionColumns) {
		return new SelectSqlBuilder(tableName, conditionColumns);
	}
	
}
